package com.ltx.bugseeker.entry.vo;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;

import java.time.LocalDateTime;

/**
 * 用户信息视图对象
 * 用于返回用户详细信息，不包含敏感数据如密码
 * 
 * @author ltx
 * @since 2025-10-20 14:43:42
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class UserVO {
    
    /**
     * 用户ID
     */
    private Long id;
    
    /**
     * 用户名
     */
    private String username;
    
    /**
     * 邮箱地址
     */
    private String email;
    
    /**
     * 手机号码
     */
    private String phone;
    
    /**
     * 真实姓名
     */
    private String realName;
    
    /**
     * 用户头像URL
     */
    private String avatar;
    
    /**
     * 用户角色
     * 1-管理员, 2-测试经理, 3-测试工程师, 4-开发工程师, 5-项目经理
     */
    private Integer role;
    
    /**
     * 角色名称
     */
    private String roleName;
    
    /**
     * 用户状态
     * 1-正常, 2-禁用, 3-锁定
     */
    private Integer status;
    
    /**
     * 状态名称
     */
    private String statusName;
    
    /**
     * 最后登录时间
     */
    private LocalDateTime lastLoginTime;
    
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    
    /**
     * 备注信息
     */
    private String remark;
}